package com.campus.pojo.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 实体类
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class Post {
    /**
     * 主键ID
     */
    private Long id;

    /**
     * 帖子标题
     */
    private String title;

    /**
     * 帖子内容描述
     */
    private String content;

    /**
     * 帖子类型(0:失物,1:招领)
     */
    private Integer postType;

    /**
     * 物品名称
     */
    private String itemName;

    /**
     * 丢失时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime lostTime;

    /**
     * 拾取时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime foundTime;

    /**
     * 丢失/拾取地点
     */
    private String location;

    /**
     * 联系方式
     */
    private String contactInfo;

    /**
     * 图片URL
     */
    private String image;

    /**
     * 状态(0:待审核,1:进行中,2:已完成,4:已取消)
     */
    private Integer status;

    /**
     * 拒绝原因（仅当状态为待审核且被拒绝时有效）
     */
    private String rejectReason;

    /**
     * 取消原因（仅当状态为进行中或已完成且被取消时有效）
     */
    private String cancelReason;

    /**
     * 发布用户ID
     */
    private Long userId;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;




}